
:root{color-scheme:dark;--bg:#240633;--text:#fff5ff;--muted:#e5cce9;--gold:#ffbe62}
*,*::before,*::after{box-sizing:border-box}
html{width:100%;overflow-x:clip;scroll-behavior:smooth}
body{width:100%;margin:0;min-height:100vh;overflow-x:clip;background:radial-gradient(circle at 50% 10%,#5e137e 0%,#2a093e 38%,#170522 85%);color:var(--text);font-family:ui-rounded,"Trebuchet MS",Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body.modal-open{overflow:hidden}
body>main{width:100%;min-width:0}button,a{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}
.wrap{width:min(1080px,calc(100% - 32px));max-width:100%;margin-inline:auto;min-width:0}
.glow{position:absolute;pointer-events:none;border-radius:50%;filter:blur(80px);opacity:.2;max-width:100%}
.glow-one{top:90px;left:-160px;width:430px;height:430px;background:#e8459d}
.glow-two{right:-130px;top:520px;width:350px;height:500px;background:#7b46ef}
.site-header{height:96px;display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:1}
.brand{display:flex;align-items:center;gap:11px;font-weight:900;font-size:22px;letter-spacing:-.8px;min-width:0}
.brand strong{color:var(--gold)}.brand-mark{flex:none;display:grid;place-items:center;width:39px;height:39px;border:1px solid #e6a0cf;border-radius:14px;color:#3a0847;background:linear-gradient(145deg,#ffd777,#ff8f4c);box-shadow:0 5px 20px #ef3a8755}
.privacy-link,.footer button{border:1px solid #a76eb8;border-radius:100px;background:#ffffff0b;color:#fbe6ff;padding:11px 18px}.privacy-link:hover,.footer button:hover{background:#ffffff20}
.hero{position:relative;z-index:1;text-align:center;padding-top:26px;padding-bottom:100px}
.hero-art{position:relative;display:flex;justify-content:center;align-items:center;margin:0 auto 23px;min-height:150px}
.banner-holder{max-width:100%;padding:12px 22px;border-radius:30px;background:linear-gradient(135deg,#ffffff13,#ffffff04);border:1px solid #ffffff28;box-shadow:0 20px 60px #13011b55}
.app-banner{display:block;max-width:min(340px,70vw);max-height:150px;width:auto;height:auto;object-fit:contain}
.banner-fallback{display:flex;align-items:center;gap:12px;font-size:clamp(23px,5vw,35px);font-weight:950;color:#ffb957}.banner-fallback[hidden]{display:none}
.sparkle{position:absolute;color:#ffcd76;text-shadow:0 0 20px #ff8f5d}.sparkle-a{left:21%;top:10%;font-size:38px}.sparkle-b{right:22%;bottom:10%;font-size:42px}
.eyebrow{color:var(--gold);font-size:12px;font-weight:900;letter-spacing:2.3px}
.hero h1{font-size:clamp(38px,7.4vw,72px);line-height:1.08;letter-spacing:-2px;margin:18px 0 22px;overflow-wrap:anywhere}.hero h1 span{color:#ffb864;text-shadow:0 4px 28px #f9507250}
.hero-text{color:var(--muted);line-height:1.75;font-size:clamp(16px,2vw,19px);max-width:690px;margin:0 auto 31px}
.cta{display:inline-flex;gap:35px;align-items:center;justify-content:center;min-width:235px;max-width:100%;background:linear-gradient(180deg,#ff62ab 0%,#d72d83 100%);border:2px solid #ffb0d0;border-radius:22px;padding:17px 29px;font-weight:900;font-size:20px;box-shadow:0 14px 30px #d8208155;transition:transform .2s,box-shadow .2s}.cta:hover{transform:translateY(-3px);box-shadow:0 17px 37px #eb3c946b}
.hero-hint{margin-top:20px;font-size:13px;color:#cba9d7}.features{padding-bottom:95px}
.section-heading{text-align:center;max-width:670px;margin:0 auto 34px}.section-heading h2,.closing h2{font-size:clamp(30px,5vw,47px);line-height:1.15;margin:12px 0}.section-heading p,.closing p{color:var(--muted);line-height:1.7}
.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.feature-card{min-width:0;background:linear-gradient(145deg,#6b2ca1cc,#360c56ed);border:1.5px solid #af74cb;border-radius:28px;padding:26px;box-shadow:inset 0 1px #ffffff29,0 16px 40px #10031a55;transition:transform .2s}.feature-card:hover{transform:translateY(-5px)}
.feature-icon{display:grid;place-items:center;width:65px;height:65px;border-radius:20px;font-size:32px;margin-bottom:19px;box-shadow:inset 0 2px #ffffff66}.feature-icon.pink{background:#d8368b}.feature-icon.green{background:#409b79}.feature-icon.orange{background:#d96c3e}.feature-icon.gold{background:#ba7b27}
.feature-card h3{margin:0 0 10px;font-size:22px;color:#ffca81}.feature-card p{margin:0;color:#ecd7f1;font-size:15px;line-height:1.65}
.closing{padding-bottom:85px}.closing-inner{text-align:center;border:1px solid #bd7dc7;border-radius:34px;padding:48px 20px 53px;background:linear-gradient(125deg,#651e86bb,#3b0c5bf2);box-shadow:0 22px 55px #11021c80}.closing-stars{font-size:29px}.closing p{margin:10px 0 27px}
.footer{min-height:89px;border-top:1px solid #ffffff28;display:flex;align-items:center;justify-content:space-between;color:#caa8d5;font-size:14px;gap:15px}.footer button{background:transparent;border:none;padding:8px}
/* The overlay occupies the exact viewport and is not affected by page scrolling. */
#privacy-modal[hidden]{display:none!important}
#privacy-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;width:100%;height:100vh;height:100dvh;max-width:none;margin:0;padding:12px;overflow:hidden;isolation:isolate}
#privacy-modal .modal-backdrop{position:absolute;inset:0;background:rgba(12,3,20,.87);backdrop-filter:blur(6px);z-index:-1}
#privacy-modal .modal-dialog{position:relative;display:flex;flex-direction:column;width:min(700px,100%);min-width:0;max-width:100%;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);min-height:0;margin:0;overflow:hidden;border-radius:24px;border:1px solid #af76cb;background:#2d0c45;box-shadow:0 24px 90px #000b;outline:none;transform:none}
#privacy-modal .modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:0 0 auto;min-width:0;padding:16px 20px;background:#451267;border-bottom:1px solid #ffffff2b}
#privacy-modal .modal-header>div{min-width:0}#privacy-modal .modal-header h2{font-size:clamp(19px,4.5vw,27px);line-height:1.2;margin:5px 0 0;overflow-wrap:anywhere}
#privacy-modal .modal-close{flex:0 0 44px;width:44px;height:44px;display:grid;place-items:center;border:1px solid #f9b7e2;background:linear-gradient(180deg,#fc65ac,#c62e81);color:white;border-radius:15px;font-size:30px;line-height:1}
#privacy-modal .modal-content{flex:1 1 auto;min-height:0;min-width:0;width:100%;padding:20px 22px 28px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;color:#f3e4f8;line-height:1.75;font-size:15px;overflow-wrap:anywhere}
#privacy-modal .modal-content h3{color:#ffc47c;font-size:18px;margin:26px 0 8px;line-height:1.35}#privacy-modal .modal-content p{margin:0 0 13px}
#privacy-modal .modal-content ul{padding-left:23px;margin:0 0 16px}#privacy-modal .modal-content li{margin:5px 0}#privacy-modal .modal-content a{color:#ffcf85;text-decoration:underline;overflow-wrap:anywhere}
#privacy-modal .modal-content::-webkit-scrollbar{width:8px}#privacy-modal .modal-content::-webkit-scrollbar-thumb{background:#a364c3;border-radius:9px}
@media(max-width:800px){.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding-bottom:78px}}
@media(max-width:560px){.site-header{height:78px}.brand{font-size:18px}.privacy-link{padding:10px 12px;font-size:13px}.hero{padding-top:12px;padding-bottom:68px}.hero-art{min-height:115px}.app-banner{max-width:65vw;max-height:110px}.banner-holder{padding:12px 15px;border-radius:24px}.sparkle-a{left:6%;font-size:27px}.sparkle-b{right:8%;font-size:30px}.hero h1{letter-spacing:-1.1px}.hero-text{font-size:15px}.hero-hint{font-size:12px}.feature-grid{grid-template-columns:1fr;gap:14px}.feature-card{padding:22px;border-radius:22px}.features{padding-bottom:66px}.closing{padding-bottom:58px}.closing-inner{padding:35px 18px;border-radius:26px}.footer{flex-wrap:wrap;justify-content:center;padding-block:22px}#privacy-modal{padding:8px}#privacy-modal .modal-dialog{max-height:calc(100dvh - 16px);border-radius:18px}#privacy-modal .modal-header{padding:13px 15px}#privacy-modal .modal-content{padding:16px;font-size:14px;line-height:1.65}}
